package com.zhl.regex2;

/**
 * 目标：体验一下使用正则表达式来校验数据格式的合法性
 * 需求：校验QQ号是否正确,要求全部是数字，长度是(6~20)之间,不能以0开头
 */
public class RegexTest1 {
    public static void main(String[] args) {
        System.out.println(isQQNumber("123456"));
        System.out.println(isQQNumber("0123456"));
        System.out.println(isQQNumber("123456789c0"));
        System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");


    }

    public static boolean checkqq(String qq) {
        return qq!=null && qq.matches("[1-9]\\d{4,19}");

    }




    public static boolean isQQNumber(String qqNumber) {
        //1.首先过滤判断是否为null或空字符串 是否以0开头   6~20位
        if (qqNumber == null || qqNumber.trim().length() == 0 || qqNumber.startsWith("0") || qqNumber.length() < 6 || qqNumber.length() > 20    ) {
            return false;
        }
        //2. 使用循环判断是否全部为数字
        for(int i=0 ;i<qqNumber.length();i++){
            char ch = qqNumber.charAt(i);
            if(ch < '0' || ch > '9'){
                return false;
            }
        }
        //3. 校验通过
        return true;
    }

}
